package com.hdax.dm.api.item;

import com.hdax.dm.dto.item.ItemDto;
import com.hdax.dm.entity.item.Item;
import com.hdax.dm.entity.item.ItemComment;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.Map;

@RestController
@Api(tags = "商品模块")
public interface ItemControllerApi {

    @PostMapping(path = "/item/item")
    @ApiOperation(value = "商品查询",notes = "热门商品查询")
    @ApiImplicitParam(required = true,name = "itemType1Id")
    List<Item> items(@RequestParam("itemType1Id")Long itemType1Id);

    @PostMapping(path = "/item/desc")
    @ApiOperation(value = "商品查询",notes = "商品详情查询")
    @ApiImplicitParam(required = true,name = "itemId")
    Item itemDesc(@RequestParam("itemId")Long itemId);

    @PostMapping(path = "/item/recommend")
    @ApiOperation(value = "商品查询",notes = "主页今日推荐查询")
    List<Item> recommend();

    @PostMapping(path = "/item/sell")
    @ApiOperation(value = "商品查询",notes = "主页即将开售查询")
    List<Item> sell();

    @PostMapping(path = "/item/floors")
    @ApiOperation(value = "商品查询",notes = "主页楼层商品查询")
    List<Item> floors(@RequestParam("itemType1Id") Long itemType1Id);

    @PostMapping(path = "/item/seniority")
    @ApiOperation(value = "商品查询",notes = "主页楼层热门演出查询")
    List<Item> seniority(@RequestParam("itemType1Id") Long itemType1Id);

    @PostMapping(path = "/item/guesslike")
    @ApiOperation(value = "商品查询",notes = "搜索页可能喜欢查询查询")
    List<Item> guesslike(@RequestParam("itemTypeId") Long itemTypeId);

    @PostMapping(path = "/item/getRecommend")
    @ApiOperation(value = "商品查询",notes = "商品详情热门推荐查询")
    List<Item> getRecommend(@RequestParam("itemTypeId") Long itemTypeId);

    @PostMapping(path = "/item/getCarouselData")
    @ApiOperation(value = "商品查询",notes = "分类页面轮播图查询")
    List<Item> getCarouselData(@RequestParam("itemTypeId") Long itemTypeId);

    @PostMapping(path = "/item/getAdimgUrl")
    @ApiOperation(value = "商品查询",notes = "分类页面三个图查询")
    List<Item> getAdimgUrl(@RequestParam("itemTypeId") Long itemTypeId);

    @PostMapping(path = "/item/getWonderfulData")
    @ApiOperation(value = "商品查询",notes = "分类页面精彩聚集查询")
    List<Item> getWonderfulData(@RequestParam("itemTypeId") Long itemTypeId);

    @PostMapping(path = "/item/getPopularSearch")
    @ApiOperation(value = "商品查询",notes = "分类页面热门排行查询")
    List<Item> getPopularSearch(@RequestParam("itemTypeId") Long itemTypeId);

    @PostMapping(path = "/item/getParentChild")
    @ApiOperation(value = "商品查询",notes = "分类页面根据年龄段查询")
    List<Item> getParentChild(@RequestParam("itemTypeId") Long itemTypeId,@RequestParam("ageGroup") Long ageGroup,@RequestParam("limit") Long limit);

    @PostMapping(path = "/item/getCalendarData")
    @ApiOperation(value = "商品查询",notes = "分类页面演出月份查询")
    List<Item> getCalendarData(@RequestParam("itemTypeId") Long itemTypeId);



}
